#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <time.h>
typedef int HPdatatype;
//堆的数据类型
typedef struct Heap{
    HPdatatype* array;
    int size;
    int capacity;
}HP;
//结构体，其实也就是创建一个顺序表
void HP_init(HP* p);
int heapempty(HP* p);
void HP_push(HP*,HPdatatype);
void headpop(HP* p);
int heapempty(HP* p);
void swap(void* e1,void*e2,int width);
void adjust_up(int* a,int pos_now,int ,int size);
void adjust_down(int* a,int pos_now,int is_little,int size);
HPdatatype heaptop(HP* p);